﻿using Microsoft.AspNetCore.DataProtection;

namespace IdsDemo
{
    public static class IdpConfig
    {
        //public static IEnumerable<IdentityResource> GetIdentityResources()
        //{
        //    return new IdentityResource[]
        //    {
        //    new IdentityResources.OpenId(),
        //    new IdentityResources.Profile(),
        //    new IdentityResources.Address(),
        //    new IdentityResources.Phone(),
        //    new IdentityResources.Email()
        //    };
        //}

        //public static IEnumerable<ApiResource> GetApiResources()
        //{
        //    //return new ApiResource[]
        //    //{
        //    //    new ApiResource("api1", "My API #1",new List<string>(){JwtClaimTypes.Role})
        //    //};
        //    //新写法
        //    return new[]
        //    {
        //    new ApiResource("api1", "My API #1")
        //    {
        //        Scopes = { "scope1"}
        //    }
        //};
        //}

        //public static IEnumerable<Client> GetClients()
        //{
        //    return new[]
        //    {
        //        #region MyRegion
        //         //// client credentials flow client
        //        //new Client
        //        //{
        //        //    ClientId = "console client",
        //        //    ClientName = "Client Credentials Client",

        //        //    AllowedGrantTypes = GrantTypes.ClientCredentials,

        //        //    ClientSecrets = { new Secret("511536EF-F270-4058-80CA-1C89C192F69A".Sha256()) },

        //        //    AllowedScopes = { "api1" }
        //        //},

        //        #endregion
           
        //        // wpf client, password grant
        //        new Client
        //        {
        //            ClientId = "client",
        //            AllowedGrantTypes = GrantTypes.ResourceOwnerPassword,
        //            ClientSecrets =
        //            {
        //                new Secret("secret".Sha256())
        //            },
        //            AllowedScopes = //允许当访问的资源
        //            {
        //                "scope1",
        //                //"api1",
        //                IdentityServerConstants.StandardScopes.OpenId,
        //                IdentityServerConstants.StandardScopes.Email,
        //                IdentityServerConstants.StandardScopes.Address,
        //                IdentityServerConstants.StandardScopes.Phone,
        //                IdentityServerConstants.StandardScopes.Profile
        //            }
        //        }
        //    };
        //}

        //public static IEnumerable<ApiScope> GetScope()
        //{
        //    return new ApiScope[] {
        //        new ApiScope("scope1"),
        //        new ApiScope("scope2"),
        //    };
        //}

    }
    
}
